Private Var1 As String
    Private Var2 As String
    Private Var3 As Integer

Private Sub demo_Reference(ByRef pVar1 as String, ByRef pVar2 as String, ByRef pVar3 as Integer)
    pVar1 = "Var One has been changed"
    pVar2 = "So has Var Two"
    pVar3 = 33
End Sub

Private Sub demo_Value(ByVal pVar1 as String, ByVal pVar2 as String, ByVal pVar3 as Integer)
    pVar1 = "Var One has been changed"
    pVar2 = "So has Var Two"
    pVar3 = 33
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click
    Var1 = "This is the ByRef Demo"
    Var2 = "Call the demo_Reference Routine"
    Var3 = 10
    Call demo_Reference(Var1, Var2, Var3)
    MsgBox("Var1=" & Var1 & vbCrLf & "Var2=" & Var2 & vbCrLf & "Var3=" & Var3)
    End Sub

Private Sub Button2_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button2.Click
    Var1 = "This is the ByVal Demo"
    Var2 = "Call the demo_Value Routine"
    Var3 = 10
    Call demo_Value(Var1, Var2, Var3)
    MsgBox("Var1=" & Var1 & vbCrLf & "Var2=" & Var2 & vbCrLf & "Var3=" & Var3)
End Sub
